Leadtools.Dicom.Common Send comments on this topic. | Back to Introduction - All Topics | Help Version 17.0.3.29
Set(DicomDataSet,Boolean,Object[]) Method
See Also 
Leadtools.Dicom.Common.Extensions Namespace > DicomExtensions Class > Set Method : Set(DicomDataSet,Boolean,Object[]) Method



ds
The datasets to set information into.
addOptional
if set to true add optional elements from the class instance.
instances
The instances that have the correct attributes.
ds
The datasets to set information into.
addOptional
if set to true add optional elements from the class instance.
instances
The instances that have the correct attributes.
Sets the information in the dataset from the specified class instances.

Syntax

Visual Basic (Declaration) 
<ExtensionAttribute()>
Overloads Public Shared Sub Set( _
   ByVal ds As DicomDataSet, _
   ByVal addOptional As Boolean, _
   ByVal ParamArray instances() As Object _
) 
Visual Basic (Usage)Copy Code
Dim ds As DicomDataSet
Dim addOptional As Boolean
Dim instances() As Object
 
DicomExtensions.Set(ds, addOptional, instances)
C# 
[ExtensionAttribute()]
public static void Set( 
   DicomDataSet ds,
   bool addOptional,
   params object[] instances
)
C++/CLI 
[ExtensionAttribute()]
public:
static void Set( 
   DicomDataSet^ ds,
   bool addOptional,
   ... array<Object^>^ instances
) 

Parameters

ds
The datasets to set information into.
addOptional
if set to true add optional elements from the class instance.
instances
The instances that have the correct attributes.

Example

This example omits optional items from the dataset.

Visual BasicCopy Code
Public Class PatientInfoTest
   Private _PatientName As PersonName

   <Element(DicomTag.PatientName, Optional := True), TypeConverter(GetType(PersonNameConverter))> _
   Public Property PatientName() As PersonName
      Get
         Return _PatientName
      End Get
      Set
         _PatientName = Value
      End Set
   End Property

   Private _PatientID As String
   <Element(DicomTag.PatientID, Optional := False)> _
   Public Property PatientID() As String
      Get
         Return _PatientID
      End Get
      Set
         _PatientID = Value
      End Set
   End Property
End Class

<Test> _
Public Sub OptionalTest()
   Dim info As PatientInfoTest = New PatientInfoTest()

   ' Initialize DICOM engine
   DicomEngine.Startup()

   Dim ds As DicomDataSet = New DicomDataSet()

   ' Initialize empty dataset
   ds.Initialize(DicomClassType.Undefined, DicomDataSetInitializeFlags.None)

   '
   ' Initialize Patient Information
   '
   info.PatientName = New PersonName("LAST^FIRST")
   info.PatientID = "123456"

   '
   ' Set the patient information
   '
   ds.Set(False,info)

   '
   ' Patient Name should't exist since we didn't add optional elements
   '
   Dim element As DicomElement = ds.FindFirstElement(Nothing, DicomTag.PatientName, False)

   If element Is Nothing Then
      Console.WriteLine("Patient Name not added")
   End If
   DicomEngine.Shutdown()
End Sub
C#Copy Code
public class PatientInfoTest
{
    private PersonName _PatientName;

    [Element(DicomTag.PatientName, Optional = true)]
    [TypeConverter(typeof(PersonNameConverter))]
    public PersonName PatientName
    {
        get { return _PatientName; }
        set { _PatientName = value; }
    }

    private string _PatientID;
    [Element(DicomTag.PatientID, Optional = false)]
    public string PatientID
    {
        get { return _PatientID; }
        set { _PatientID = value; }
    }
}        


public void OptionalTest()
{            
    PatientInfoTest info = new PatientInfoTest();

    // Initialize DICOM engine
    DicomEngine.Startup();

    DicomDataSet ds = new DicomDataSet();

    // Initialize empty dataset
    ds.Initialize(DicomClassType.Undefined, DicomDataSetInitializeFlags.None);            

    //
    // Initialize Patient Information
    //
    info.PatientName = new PersonName("LAST^FIRST");
    info.PatientID = "123456";

    //
    // Set the patient information
    //
    ds.Set(false,info);

    //
    // Patient Name should't exist since we didn't add optional elements
    //
    DicomElement element = ds.FindFirstElement(null, DicomTag.PatientName, false);

    if (element == null)
        Console.WriteLine("Patient Name not added");
    DicomEngine.Shutdown();
}

Requirements

Target Platforms: Microsoft .NET Framework 2.0, Windows 2000, Windows XP, Windows Server 2003 family, Windows Server 2008 family, Windows Vista, Windows 7

See Also

Leadtools.Dicom.Common requires a Document or Medical toolkit license and unlock key. For more information, refer to: Imaging Pro/Document/Medical Features